1. Field of the Invention
The present invention relates to network systems. More particularly, the present invention relates to a network system wherein scheduling data is automatically transferred from a plurality of storage systems to a network switch for scheduling access to the plurality of storage systems.
2. Description of the Prior Art
Conventional disk drive storage systems typically employ a scheduling algorithm in order to optimize data throughput. For example, a scheduling algorithm may evaluate and prioritize access requests rather than service the requests on a xe2x80x9cfirst come first servexe2x80x9d basis. The scheduling priority is typically based on certain temporal parameters of the disk drive, such as the radial position of the head with respect to the disk. A scheduling algorithm may, for example, service all of the access requests from the outer to inner diameter tracks before servicing access requests from the inner to outer diameter tracks, similar to an elevator in a building servicing all of the down requests before servicing up requests. This algorithm is appropriately referred to as the xe2x80x9celevatorxe2x80x9d algorithm.
It is known to use temporal parameters of a disk drive (e.g., the radial or rotational position of the head) in order to perform the scheduling operations; however, these types of scheduling algorithms have in the past been implemented by a disk controller which has direct access to the temporal parameters. For example, U.S. Pat. No. 5,390,313 discloses a disk drive comprising a disk controller for scheduling access to multiple disks based on the rotational position of the heads relative to the disks. Co-pending U.S. patent application Ser. No. 09/300,179 discloses a disk drive which provides head position information to a host computer so that the host microprocessor may execute the scheduling algorithm rather than the disk controller. U.S. Pat. No. 5,787,482 discloses a video server wherein access requests to a plurality of disk drives are scheduled based on an inferred radial position of the head within each disk drive. The radial position of the head is inferred based on commands previously sent to each disk drive. However, using inferred temporal parameters to implement the scheduling algorithm provides sub-optimal performance due to the error inherent in estimation. Further, it is difficult to minimize the variance in latency associated with generating the temporal parameters due to the estimation error as well as the variance in computing the temporal parameters, which further degrades performance of the scheduling algorithm. Consequently, scheduling algorithms based on inferred temporal parameters are sub-optimal with respect to the aggregate performance of a computer network, and particularly the number of input/output operations per second (IOPs) performed by each disk drive connected to the computer network.
There is, therefore, a need to improve upon the prior art techniques of scheduling access to a plurality of storage systems, such as a plurality of disk drives, connected to a computer network. In particular, there is a need to schedule access to a plurality of storage systems connected to a computer network in a manner which minimizes the variance in latency associated with generating the temporal parameters, thereby improving the computer network""s aggregate performance.
The present invention may be regarded as a network switch for resolving requests from a plurality of host initiators by scheduling access to a plurality of storage systems. The network switch comprises a plurality of multi-port switches interconnected to form a switched fabric, the multi-port switches for routing requests to the plurality of storage systems and for receiving scheduling data from each of the plurality of storage systems. The network switch further comprises a memory for storing the scheduling data, and a microprocessor, responsive to the scheduling data stored in the memory, for executing a scheduling algorithm to schedule the requests. The scheduling data is transferred automatically from each storage system to the memory through the multi-port switches without the microprocessor requesting the scheduling data from each storage system.
The present invention may also be regarded as a network method of resolving requests from a plurality of host initiators by scheduling access to a plurality of storage systems. The network method comprises the steps of routing requests to the plurality of storage systems and receiving scheduling data from each of the plurality of storage systems through a plurality of multi-port switches interconnected to form a switched fabric. The scheduling data is stored in memory, and the requests are scheduled using the stored scheduling data. The scheduling data is transferred automatically from each storage system to the memory through the multi-port switches without requesting the scheduling data from each storage system.